<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<?php
// check if the user is logged-in
include 'authentication.php';
isAuthorized();

include_once($_SERVER["DOCUMENT_ROOT"]."/web-doc/protected/database/MySqlDAO.php");
include_once("../utils/redirect.php");
include_once('../utils/directories.php');
require_once "../protected/utils/FileSystemUtils.php";
include_once '../utils/mimeTypes.php';

$mySqlDAO = new MySqlDAO();

if (!empty($_GET['idc'])) {
    $idc = $_GET['idc'];
    if (!empty($_POST['isToInsert']))
    {
        if (!empty($_POST['title']) && $_FILES['userfile']['size'] > 0)
        {
            $title = $_POST['title'];
            
            $fileName = $_FILES['userfile']['name'];
            $tmpName = $_FILES['userfile']['tmp_name'];
            $fileSize = $_FILES['userfile']['size'];
            $fileType = $_FILES['userfile']['type'];

            $fsUtils = new FileSystemUtils();            
            $maxFileSize = $fsUtils->getMaxFileSize();
            $maxFileSizeMB = $maxFileSize/1048576;
            
            if($fileSize > $maxFileSize)
                echo "ATTENZIONE: Il file non può essere più grande di ".$maxFileSizeMB."MB.<br>";
            else if(!isSupportedFormat(pathinfo($fileName, PATHINFO_EXTENSION))) {
                echo "ATTENZIONE: Il formato di questo file non è supportato.".$fileType."<br>";
            }
            else {
                if (!get_magic_quotes_gpc())
                    $fileName = addslashes($fileName);
                
                $idfres = $mySqlDAO->checkFileTitle($idc, $title);
                $existTitle = $mySqlDAO->checkFileExist($idc, $fileName);

                /* Check if title is already used */
                if(!empty($idfres)) {
                    echo "ATTENZIONE: Il nome <b>$title</b> è già usato per un'altro file in questa categoria. Scegliere un'altro nome.<br>";
                }
                /* Check id file is already uploaded */            
                else if(!empty($existTitle)) {
                    echo "ATTENZIONE: Il file <b>$fileName</b> esiste già in questa categoria con titolo <b>$existTitle</b>.<br>";
                }
                else {
                    $target_path = getRootDir() . $mySqlDAO->getCategoryPath($idc);
                    $path = $target_path . DIRECTORY_SEPARATOR . $fileName;
                    $dbPath = $mySqlDAO->getCategoryPath($idc);

                    if(@is_uploaded_file($tmpName)) {

                        @move_uploaded_file($tmpName, $path)
                        or die("ERRORE: Impossibile spostare il file, controlla l'esistenza o i permessi della directory dove fare l'upload.");


                        $res = $mySqlDAO->createFile($title, $dbPath, $fileName, $fileSize, $fileType, $idc);
                        if (!empty ($res))  // Query OK
                            redirect("showcategory.php?idc=$idc",FALSE);
                        else {
                            unlink($path);
                            echo "ERRORE: Si è verificato un errore durante il caicamento del file. Prova di nuovo!";
                        }
                    } else
                        echo "ERRORE: Impossibile salvare il file <b>" . $fileName ."</b>.";
                } 
            }
        } else {
            echo "ATTENZIONE: Inserire tutti i dati.";
        }
    } 
} else {
    die("ERRORE: Parent directory mancante. <a href=javascript:history.back(-1)>Indietro</a>");
}

if(!isset ($title))
    $title = "";
?>


<html>
    <head>
        <title>WedDoc - Create file</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" type="text/css" href="../styles/main.css">
        <link rel="stylesheet" type="text/css" href="../styles/admin.css">
    </head>
    <body>
        <form method="post" enctype="multipart/form-data" action="createfile.php?idc=<?php echo $idc ?>">
            <table width="450" border="0" cellpadding="1" cellspacing="1" class="box">
                <tr>
                    <td valign="top" colspan="2">
                        Titolo <input type="text" name="title" size="50" maxlength="255" value="<?php echo $title ?>">
                    </td>
                </tr>
                <tr>
                    <td width="246">
                        <input type="hidden" name="isToInsert" value="true">
                        <input name="userfile" type="file" id="userfile">
                    </td>
                </tr>
                <tr>
                    <td width="80" colspan="2">
                        <br><br>
                        <input type="submit" value="Carica" />
                        <!--<input name="upload" type="submit" class="box" id="upload" value=" Upload ">-->
                    </td>
                </tr>
            </table>
        </form>
    </body>
</html>